:-module(wx,[]).
:-use_module('de.pro').


de:wx_items([金,水,木,火,土]).
de:lq_items([兄弟,子孙,妻财,官鬼,父母]).

%% 五行常量
de:_.wx_gold():= E:- wx:new(E,0).
de:_.wx_water():=E:- wx:new(E,1).
de:_.wx_wood():=E:- wx:new(E,2).
de:_.wx_fire():=E:- wx:new(E,3).
de:_.wx_earth():=E:- wx:new(E,4).
%% 关系常量
de:M.wx_brother():= M.
de:M.wx_son():= E :- E = M.add(1).
de:M.wx_wife():= E :- E = M.add(2).
de:M.wx_husband():= E :- E = M.add(3).
de:M.wx_father():= E :- E = M.add(4).

new(Var,V):-
	de:new(Var,[count-5,value-V,type-wx]).


sheng(A,B):-
    new(A,_),
    B = A.add(1).

ke(A,B):-
    sheng(A,C),sheng(C,B).

hongfan(W,H):-
    new(W,WV),
	nth0(WV,[4,1,3,2,5],HM),
    (integer(H) -> 0 is (H - HM) mod 5; H = HM).
	
de:M.hongfan():= E :-
	get_dict(type,M,wx),
	nth0(M.value,[4,1,3,2,5],E).
	